Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implemented a fix for #1794 (giant meta info produces invalid GDS) #1796

Merged
merged 1 commit into from
Jul 27, 2024

Conversation

klayoutmatthias
Copy link
Collaborator

This fix solves two problems:

  • Too large meta info data
  • Too many meta info entries

The first problem is fixed by splitting the strings that serialize the meta info.

The second problem is fixed by introducing prefixed strings that indicate the attribute index within the string, not inside the PROPATTR record.

The solution is backward compatible, although old versions will not read all meta info and skip entries that exceed the GDS capacity.

Caveat: the produced GDS files may contain duplicate PROPATTR keys. This is not strictly illegal, but some third-party processors may drop such entries.

This fix solves two problems:
* Too large meta info data
* Too many meta info entries

The first problem is fixed by splitting the strings that serialize
the meta info.

The second problem is fixed by introducing prefixed strings that
indicate the attribute index within the string, not inside
the PROPATTR record.

The solution is backward compatible, although old versions will
not read all meta info and skip entries that exceed the GDS
capacity.

Caveat: the produced GDS files may contain duplicate PROPATTR
keys. This is not strictly illegal, but some third-party processors
may drop such entries.
@klayoutmatthias klayoutmatthias linked an issue Jul 20, 2024 that may be closed by this pull request
@klayoutmatthias klayoutmatthias merged commit baf2c76 into master Jul 27, 2024
24 checks passed
@klayoutmatthias klayoutmatthias deleted the bugfix/issue-1794 branch July 27, 2024 09:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

MetaInfo with (gigantic) size makes klayout write a faulty gds
1 participant